Fix up loading map files into SCS2 - #250
Conversation
… of the root of the tree. In an attempt to load general mcap files
…nts to tests explaining what they are doing
…quals in the ros2msg formats
…y in Practice, Goetz, listing 5.19 to fix race condition exceptions
| public class LZ4FrameDecoder | ||
| { | ||
|
|
||
| static final String PREMATURE_EOS = "Stream ended prematurely"; |
There was a problem hiding this comment.
This was a bunch of hard coded setup that now happens on the native side
| } | ||
| } | ||
|
|
||
| static class FrameInfo |
There was a problem hiding this comment.
This was more code that happens on the native side now, its gets handled by default
| RESERVED_0(0), RESERVED_1(1), CONTENT_CHECKSUM(2), CONTENT_SIZE(3), BLOCK_CHECKSUM(4), BLOCK_INDEPENDENCE(5); | ||
|
|
||
| private final int position; | ||
| final int OSMemoryPageSize = 4096; // Minimum buffer size for tons of I/O calls |
There was a problem hiding this comment.
Tried to add comments here explaining what its doing
| } | ||
| } | ||
|
|
||
| public static class BD |
There was a problem hiding this comment.
More code that gets handled by default on the native side
| // LZ4F_compressFrame call, it holds no per-call state, so there's no reason to rebuild it every time. | ||
| private final LZ4FPreferences preferences; | ||
|
|
||
| static final String CLOSED_STREAM = "The stream is already closed"; |
There was a problem hiding this comment.
Same as the decoder, a lot of this code gets handled by default on the native side now
There was a problem hiding this comment.
Added a few more tests
There was a problem hiding this comment.
Added a few more tests
There was a problem hiding this comment.
Converted the LZ4rameDecoderCompressedData.txt to a binary file so its not as large, also cut it in half because we don't need to store that much data
There was a problem hiding this comment.
Since the binary file exists, I was able to delete this file
| api("org.antlr:antlr4-runtime:4.13.1") | ||
| api("com.github.vatbub:mslinks:1.0.6.2") | ||
| // Not using org.bytedeco:lz4-platform: it pulls in javacpp-platform, whose fixed javacpp:1.5.8 | ||
| // classifier list (incl. android-arm/x86, linux-armhf, linux/windows-x86 32-bit) gets bumped to |
There was a problem hiding this comment.
Added lz4 strictly for mcap decoding
Added support for loading several different test map files. - A hand converted yovariable log that saves to an mcap file - Old and new robot log that uses mcap - Open source nissan car mcap file https://github.com/user-attachments/assets/094f2919-d73c-40b0-8e87-c5f31513bc96 https://github.com/user-attachments/assets/d2db6d3b-6fe8-4d7e-806f-9c93e1e03d91
Added support for loading several different test map files.
Screencast.from.2026-07-10.15-22-02.mp4
Screen.Recording.2026-07-20.at.1.08.44.PM.mov